﻿using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using HousingInfo.Library; 

namespace NEWS.Admin
{
    public partial class Currency : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            //if ((Session["LOGIN"] == null) || (int)Session["ROLES"] != 1)
            //{
            //    Response.Redirect("Login.aspx");
            //}
            GridView1.DataSource = CurrencyBOList.GetCurrencyBOList();
            GridView1.DataBind();
            string mode = Request.QueryString["Mode"];
            //Mode Add
            if (mode == "1")
            {
                btnUpdate.Visible = false;
                btnDelete.Visible = false;
                txtcurrencyid.Visible = false;
                lblcurrencyid.Visible = false;
                PanelActions.Visible = true;
                lbHeaderActions.Text = "Thêm loại tiền tệ";
                GridView1.Columns[0].Visible = false;

            }
            else //Mode Update
            {
                btnAdd.Visible = false;
                lbHeaderActions.Text = "Sửa loại tiền tệ";
            }
        }

        protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
        {
            CheckBox checkbox;
            txtcurrencyid.Text = GridView1.SelectedRow.Cells[1].Text;
            txtcurrencyname.Text = Server.HtmlDecode(GridView1.SelectedRow.Cells[2].Text);
            checkbox = (CheckBox)GridView1.SelectedRow.FindControl("CheckBox1");
            isActive.Checked = checkbox.Checked;
            message.Text = "";
            if (PanelActions.Visible == false)
                PanelActions.Visible = true;
            messagedelete.Text = "";
        }

        protected void btnAdd_Click(object sender, EventArgs e)
        {
            CurrencyBO currencybo = CurrencyBO.NewCurrencyBO();
            currencybo.CurrencyName = txtcurrencyname.Text;
            currencybo.IsActive = isActive.Checked;
            try
            {
                currencybo.Save();
                message.Text = "Thêm thành công !";
                txtcurrencyname.Text = "";
                GridView1.DataBind();
            }

            catch
            {
                message.Text = "Thêm thất bại !";
            }
        }

        protected void btnDelete_Click(object sender, EventArgs e)
        {
            int currencyid = Convert.ToInt32(txtcurrencyid.Text);
            if (NewsHouseBOList.CheckCurrencyidInNewsHouse(currencyid))
            {
                ScriptManager.RegisterStartupScript(Page, Page.GetType(), "Success", "alert('Bạn phải xóa những tin nhà đất có tồn tại loại tiền tệ này')", true);

                return;
            }
            CurrencyBO.DeleteCurrencyBO(Convert.ToInt32(txtcurrencyid.Text));
            messagedelete.Text = "Xóa thành công !";
            GridView1.DataBind();
            PanelActions.Visible = false;
        }

        protected void btnUpdate_Click(object sender, EventArgs e)
        {
            int currencyid = Convert.ToInt32(txtcurrencyid.Text);
            CurrencyBO currencybo = CurrencyBO.GetCurrencyBO(currencyid);
            currencybo.CurrencyName = txtcurrencyname.Text.ToString();
            currencybo.IsActive = isActive.Checked;
            try
            {
                currencybo.Save();
                message.Text = "Cập nhật thành công !";
                GridView1.DataBind();
            }
            catch
            {
                message.Text = "Cập nhật thất bại!";
            }
        }

        protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
        {
            GridView1.PageIndex = e.NewPageIndex;
            this.BindGrid();
        }

        public void BindGrid()
        {
            GridView1.DataSource = CurrencyBOList.GetCurrencyBOList();
            GridView1.DataBind();
        }
    }
}
